using System.Collections.Generic;

using Google.Protobuf;
using Google.Protobuf.Reflection;
using ProtoMsg;

//  ======= 生成消息ID枚举 ====
[XLua.LuaCallCSharp]
public enum MsgIDEnum{
	  BaseMsgRetID = 1000,
	  BaseMsgReqID = 1001,
	  StartMatchReqID = 1002,
	  StartMatchRetID = 1003,
	  EnterRoomRetID = 1004,
	  AOIMsgID = 1005,
	  EnterAOIID = 1006,
	  LeaveAOIID = 1007,
	  UpdateAOIID = 1008,
	  PropSyncListID = 1009,
	  PropBaseSyncListID = 1010,
	  SyncBaseInfoID = 1011,
	  RegisterReqID = 1012,
	  RegisterRetID = 1013,
	  LoginReqID = 1014,
	  LoginRetID = 1015,
	
}

//  ======= 初始化ProtoMap字典 ====
public class ProtoMap
{
	public Dictionary<int, System.Type> ProtoMapDic = new Dictionary<int, System.Type>();

	public void Init()
	{
		ProtoMapDic.Add(((int)MsgIDEnum.BaseMsgRetID), typeof(BaseMsgRet));
		ProtoMapDic.Add(((int)MsgIDEnum.BaseMsgReqID), typeof(BaseMsgReq));
		ProtoMapDic.Add(((int)MsgIDEnum.StartMatchReqID), typeof(StartMatchReq));
		ProtoMapDic.Add(((int)MsgIDEnum.StartMatchRetID), typeof(StartMatchRet));
		ProtoMapDic.Add(((int)MsgIDEnum.EnterRoomRetID), typeof(EnterRoomRet));
		ProtoMapDic.Add(((int)MsgIDEnum.AOIMsgID), typeof(AOIMsg));
		ProtoMapDic.Add(((int)MsgIDEnum.EnterAOIID), typeof(EnterAOI));
		ProtoMapDic.Add(((int)MsgIDEnum.LeaveAOIID), typeof(LeaveAOI));
		ProtoMapDic.Add(((int)MsgIDEnum.UpdateAOIID), typeof(UpdateAOI));
		ProtoMapDic.Add(((int)MsgIDEnum.PropSyncListID), typeof(PropSyncList));
		ProtoMapDic.Add(((int)MsgIDEnum.PropBaseSyncListID), typeof(PropBaseSyncList));
		ProtoMapDic.Add(((int)MsgIDEnum.SyncBaseInfoID), typeof(SyncBaseInfo));
		ProtoMapDic.Add(((int)MsgIDEnum.RegisterReqID), typeof(RegisterReq));
		ProtoMapDic.Add(((int)MsgIDEnum.RegisterRetID), typeof(RegisterRet));
		ProtoMapDic.Add(((int)MsgIDEnum.LoginReqID), typeof(LoginReq));
		ProtoMapDic.Add(((int)MsgIDEnum.LoginRetID), typeof(LoginRet));
	
	}
}
